package com.ibm.spatiotemp.source;

import java.util.Collection;

import com.ibm.spatiotemp.datamodel.datatype.request.TSBuildIdxRequest;
import com.ibm.spatiotemp.datamodel.datatype.timeseries.GPSTimeseries;

public interface GPSDataSource {

	public Collection<GPSTimeseries> getTimeseriesesByTimeRange(long startdate, long enddate);

	public GPSTimeseries getTimeseriesByTSIDAndTimeRange(
			String tsid, long startdate, long enddate);
	
	public GPSTimeseries getTimeseriesByTSIDAndTimeRange(TSBuildIdxRequest req);
	
	public DataSourceDescriber getDataSourceDescriber();
	
	/*TSID: string type*/
	public Collection<String> listTimeseriesID();
	
	/*define the time scale to be indexed during partition,
	 * unit is millionsec, for example, default value = 1*24*3600*1000
	 * */
	public Long getIndexScale();
	
	public Long getMostEarlyTimeStamp(); 
}
